#!/bin/bash

#            ---------------------------------------------------
#                             Ehtools Framework          
#            ---------------------------------------------------
#                Copyright (C) <2018-2020>  <Entynetproject>   
#
#        This program is free software: you can redistribute it and/or modify
#        it under the terms of the GNU General Public License as published by
#        the Free Software Foundation, either version 3 of the License, or
#        any later version.
#
#        This program is distributed in the hope that it will be useful,
#        but WITHOUT ANY WARRANTY; without even the implied warranty of
#        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
#        GNU General Public License for more details.
#
#        You should have received a copy of the GNU General Public License
#        along with this program.  If not, see <http://www.gnu.org/licenses/>.

CE="\033[0m"
RS="\033[1;31m"
YS="\033[1;33m"

if [[ $EUID -ne 0 ]]
then
   sleep 1
   echo -e "["$RS"*"$CE"] "$RS"This script must be run as root!"$CE"" 1>&2
   sleep 1
   exit
fi

{
chattr -i /dev/config
chattr -i /dev/config/config.txt
chattr -i /dev/config/configure.txt
} &> /dev/null

{
mkdir /dev/config
echo 0 >> /dev/config/config.txt
echo 1 >> /dev/config/configure.txt
} &> /dev/null

{
chattr +i /dev/config
chattr +i /dev/config/config.txt
chattr +i /dev/config/configure.txt
} &> /dev/null


{
SERSE="$( cat /dev/config/config.txt | head -n 1 )"
ESRES="$( cat /dev/config/configure.txt | head -n 1 )"
} &> /dev/null

if [[ "$SERSE" != "$ESRES" ]]
then

{
ASESR="$(ping -c 1 -q www.google.com >&/dev/null; echo $?)"
KEYEK="$( cat /etc/ehtools/root/service/ehtkey.txt )"
} &> /dev/null

if [[ "$ASESR" = 0 ]]
then 

KEYKE="$( timeout -s SIGTERM 40 curl "https://pastebin.com/raw/k8D7RBtC" 2>/dev/null )"

if [[ "$KEYEK" != "$KEYKE" ]]
then

sleep 1
echo -e "["$RS"*"$CE"] "$RS"Failed to open session for libchattr!"$CE""

sleep 1
exit

fi

else
sleep 1
echo -e "["$RS"*"$CE"] "$RS"No Internet connection!"$CE""
sleep 1
exit
fi
fi

passcode="$(cat /root/ehtools/etc/.config)"
read -s -p $'Password: ' output
if [[ $output != $passcode ]]
then
	echo -e "libdec: Sorry"
else
{
CONF="$( cat /root/ehtools/etc/.config )"
cd /etc/ehtools
chattr -i /etc/ehtools
chattr -i /etc/ehtools/login
openssl enc -aes-256-cbc -base64 -pass pass:"$CONF" -d -p -in login -out login.dec
if [[ "$(cat login.dec)" = "" ]]
then
rm login.dec
else
rm login
mv login.dec login
fi
chattr +i /etc/ehtools/login
chattr -i /etc/ehtools/password
openssl enc -aes-256-cbc -base64 -pass pass:"$CONF" -d -p -in password -out password.dec
if [[ "$(cat password.dec)" = "" ]]
then
rm password.dec
else
rm password
mv password.dec password
fi
chattr +i /etc/ehtools/password
chattr -i /etc/ehtools/root
chattr -i /etc/ehtools/root/password
cd /etc/ehtools/root
openssl enc -aes-256-cbc -base64 -pass pass:"$CONF" -d -p -in password -out password.dec
if [[ "$(cat password.dec)" = "" ]]
then
rm password.dec
else
rm password
mv password.dec password
fi
chattr +i /etc/ehtools/root/password
chattr +i /etc/ehtools/root
chattr +i /etc/ehtools
} &> /dev/null
fi
